package travelDreamEntities;

import java.io.Serializable;

import javax.persistence.*;

import dataTransferOblect.ImpiegatoDTO;

import java.util.Date;
import java.util.Set;


/**
 * The persistent class for the impiegato database table.
 * 
 */
@Entity
@NamedQuery(name="Impiegato.findAll", query="SELECT i FROM Impiegato i")
public class Impiegato implements Serializable {
	private static final long serialVersionUID = 1L;
	
	public static final String FIND_ALL = "Impiegato.findAll";

	@Id
	private int idImpiegato;

	private String cognome;

	private String nome;

	//bi-directional one-to-one association to Utenti
	@OneToOne
	@JoinColumn(name="codPersona")
	private Utenti utenti;

	//bi-directional many-to-one association to Pacchettoviaggio
	@OneToMany(mappedBy="impiegatoBean")
	private Set<Pacchettoviaggio> pacchettoviaggios;

	public Impiegato() {
	}

	public Impiegato(ImpiegatoDTO impiegato) {
		 	
	        this.nome = impiegato.getNome();
	        this.cognome = impiegato.getCognome();
	 
	}

	public int getIdImpiegato() {
		return this.idImpiegato;
	}

	public void setIdImpiegato(int idImpiegato) {
		this.idImpiegato = idImpiegato;
	}

	public String getCognome() {
		return this.cognome;
	}

	public void setCognome(String cognome) {
		this.cognome = cognome;
	}

	public String getNome() {
		return this.nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public Utenti getUtenti() {
		return this.utenti;
	}

	public void setUtenti(Utenti utenti) {
		this.utenti = utenti;
	}

	public Set<Pacchettoviaggio> getPacchettoviaggios() {
		return this.pacchettoviaggios;
	}

	public void setPacchettoviaggios(Set<Pacchettoviaggio> pacchettoviaggios) {
		this.pacchettoviaggios = pacchettoviaggios;
	}

	public Pacchettoviaggio addPacchettoviaggio(Pacchettoviaggio pacchettoviaggio) {
		getPacchettoviaggios().add(pacchettoviaggio);
		pacchettoviaggio.setImpiegatoBean(this);

		return pacchettoviaggio;
	}

	public Pacchettoviaggio removePacchettoviaggio(Pacchettoviaggio pacchettoviaggio) {
		getPacchettoviaggios().remove(pacchettoviaggio);
		pacchettoviaggio.setImpiegatoBean(null);

		return pacchettoviaggio;
	}

}